package 微服务.SpringCloud_1.Ribbon_2.负载均衡策略;

/**
 * 负载均衡的策略
 */
public class index {
    /**
     * Ribbon负载均衡的策略是一个叫做IRule的接口来定义的，每一个子接口都是一种策略<p>
     * 而Ribbon默认的策略是ZoneAvoidanceRule：区域规避规则<p>
     * 由于这个类的父类的父类叫做ClientConfigEnabledRoundRobinRule<p>
     * 不难知道它也是采用了轮询的策略的（看后面的RoundRobinRule）<p></p>
     * <p>
     * ZoneAvoidanceRule：以区域可用的服务器为基础进行服务器的选择。使用Zone对服务器进行分类，这个zone可以理解为一个
     * 机房、一个机架等。而后再对Zone内的多个服务做轮询 <p>
     * 也就是说，我们可以对Zone值进行设置，在做负载均衡时，会优先选择与服务消费者在同一个Zone内的服务，然后再做轮询<p></p><p></p>
     * <p>
     * 修改负载均衡策略：<p>
     * 1、代码方式（全局）：在IOC容器中定义一个新的IRule<p>
     * 2、配置文件方式（只针对某个服务）：在配置文件中添加新的配置<p>
     * 以上详见图片“改变负载均衡策略的方式.png”<p>
     *
     * @param args
     */
    public static void main(String[] args) {

    }
}
